通过LLM 自我优化找到最优提示词的方法: OPRO

在人工智能领域,我们习惯于通过调整算法的模型参数来优化其性能。现在,来自谷歌的一个团队提出了一种全新的思路正在革新语言模型的训练方式——仅通过修改模型的输入提示,无需调整参数,就能激发其惊人的推理潜力。

这种被称为OPRO(Optimization by PROmpting) 的新方法源于OpenAI的GPT-3等大规模语言模型对提示高度敏感的特点。研究人员发现,在相同的任务上,仅仅改变提示用词,模型的表现就可能出现天壤之别。例如在数学题推理上,“Let's solve this problem step-by-step”这样的提示明显优于其他语句。这启发研究人员思考,是否可以仅通过调整提示,来激发语言模型强大的逻辑推理能力,而无需重新训练模型。

于是,来自谷歌团队的优化框架OPRO应运而生。这种方法将语言模型视为一个黑匣子,每次提供优化问题的自然语言描述作为模型的输入提示。语言模型根据提示尝试给出解决方案,然后研究人员评估解决方案的质量,再次修改提示输入,使模型生成更优解。通过不断调整提示,迭代优化过程,最终找到能激发模型最大推理能力的最佳提示。

这种只依靠提示优化的黑匣子方法极大降低了训练语言模型的门槛。研究人员仅需要访问模型的API接口,不需要了解其具体参数,就可以通过修改几行提示文本来完成模型的优化。相比之下,传统的调参算法需要昂贵的计算资源进行反复的训练。此外,提示调优过程直观易理解,研究人员可以明确观察提示词改变带来的性能变化。

OPPR 方法

 

OPRO 主要由下面三部分组成:

在每个优化步骤中,LLM 根据优化问题描述以及元提示(meta-prompt)中先前评估的解决方案(右下部分)生成优化任务的候选解决方案。接下来,LLM 在对新的解决方案进行评估并将其添加到元提示中以进行后续优化过程。当 LLM 无法提出具有更好优化分数的新解决方案或达到最大优化步骤数时,优化过程终止。

问题描述
初始化解决方案
构造元提示
生成新解决方案
更新元提示
重复迭代
是否无法给出更短路径?
返回最短路径

下面是一个具体例子:

这是用 OPRO 方法后得到的最优 prompt:

看Ours 那张表, 其中第一行表示: 使用PaLM 2-L 来做GSM8K题, 在由 PalM 来做Prompt 优化器的情况下,在 回答前面加上 “Take a deep breath and work on this problem step-by-step“, 总体正确率能达到80.2 而相对于传统方法71.8 准确率有了接近10个点提升.

GSM8K(Grade School Math 8K)是一个包含8.5K个高质量、语言多样的小学数学问题数据集。 该数据集的创建旨在支持需要多步推理的基本数学问题的问答任务。

text-bison, PaLM 2-L 都是类似 ChatGPT 的LLM

提示调优的奇效也在其他任务上展现出来。仅仅增加“先理解问题,然后建立等式,最后计算结果”这样的提示,GPT-3在数学题数据集上准确率就提高了近30%。在BIG-BENCH等逻辑推理数据集上,优化提示也实现了巨大飞跃,最高超过50%的性能提升。这证明了仅通过提示优化,就能激发语言模型强大的逻辑思维能力,而无需进行额外训练。

这个方法存在的问题

OPRO方法也并不是总能找到最优的 prompt, 尤其是在遇到下列情况的时候:

  1. 数值计算错误案例

问题里设计到复杂数值计算的时候. 这类案例中,语言模型无法准确计算数值,而是给出错误的函数值。共性在于都涉及到了对数值的计算。原因是语言模型没有必要的数学计算能力。

  1. 生成已出现解案例

语言模型没有遵循“生成新解”的要求,重复生成了已出现的解决方案。共性在于指令遵循不可靠。原因可能是语言模型对长序列记忆与控制能力有限。

  1. 停滞在非最优解案例

优化过程中,语言模型的解停滞在一个既不是全局最优,也不是局部最优的次优点,难以继续前进。共性是optimizers容易陷入不好的局部状态。原因在于复杂问题的损失landscape难以探索。

  1. 处理长prompt困难案例

大规模复杂的优化问题需要较长的prompt来描述,这超出了语言模型的context窗口范围,导致失败。共性是语言模型的长依赖建模能力有限。

  1. 结果敏感多变案例

小的提示变化导致结果剧烈波动。共性是语言模型对提示高度敏感。原因在于prompts空间过于复杂高维。

总结

尽管仍存在一定的随机性与不稳定性,但提示调优为语言模型提供了一个前所未有的微调途径。未来,我们有望依靠简单的提示工程,开发出胜任更加复杂任务的语言模型,而无需大量算力和数据集。语言模型或将成为一次解决一切的通用推理引擎和创意来源,其应用前景令人无限遐想。提示调优研究正在打开通往更智能语言模型的新大门。


References:

https://arxiv.org/pdf/2309.03409.pdf

https://x.com/javilopen/status/1713150572453339613?s=20

https://awtmt.com/articles/3698259

https://www.jiqizhixin.com/articles/2023-09-09

https://cloud.tencent.com/developer/article/2327756